// 准备用新的方式采集一遍试试

toast('脚本开始V2');
console.log("开始111111111")

var storage = storages.create("douyin");
// 进入评论页
function goDetail(){
  let c1 = click(620,200);//点头像
  console.log('点击头像',c1);
  sleep(3500);
  // click(200,650); //关注
  // click('关注');
  // sleep(3000);

  if(text('私密账号').exists() || text('还没有作品').exists() || text('暂无作品').exists()){
    sleep(2000);
    checkAndBack();
    sleep(2000);
    checkAndBack();
    sleep(2000);
    return
  }
  let tempTopForGuanzhu = null;
  let targetElement = className("android.widget.FrameLayout").depth(2) // className("android.widget.ImageView")
    .filter(function (el) {
          // 获取元素的边界信息
          let elementBounds = el.bounds();
          // 这里设定想要的边界范围条件，比如以下示例是判断元素是否在屏幕上半部分
          return elementBounds.left === 612;
      })
    .findOne();

  if (targetElement) {
      // 如果找到了符合条件的元素，可以进行后续操作，比如点击它
      console.log('找到了关注右边按钮 ',targetElement);
      tempTopForGuanzhu = targetElement.bounds()
      // targetElement.click();
  } else {
      toast("未找到符合条件的元素");
  }
  console.log('tempTopForGuanzhu ',tempTopForGuanzhu)
  if(tempTopForGuanzhu !== null){
    if(!desc("私信").exists() ){
      if(randomAction('guanzhu')){
        click(200,tempTopForGuanzhu.centerY());//关注
        sleep(2000);
        // click(tempTopForGuanzhu.centerX(),tempTopForGuanzhu.centerY());//收起推荐
        // sleep(2000);
      }
    }
    click(150,tempTopForGuanzhu.centerY()+240); //第一个视频
    sleep(3500);
    if(randomAction('dianzan')){
      click(655,710);//点赞
      sleep(2000);
    }
    if(randomAction('shoucang')){
      click(660,984);//收藏
      sleep(2500);
    }
    if(randomAction('pinglun')){
      pinglunAction();
    }
    checkAndBack();
  }

  sleep(2000);
  checkAndBack();
  sleep(2000);
  checkAndBack();
  sleep(2000);
}

function checkAndBack(){
  if(!className("com.bytedance.ies.xelement.input.LynxInputView").exists() && !textEndsWith("人真实评价").exists()){
    back();
  }
}

// var storage = storages.create("douyin");
function randomAction(key){
  let re = false;
  let v =  parseInt( storage.get(key) ) /100;
  if(Math.random() < v){
    re = true;
  }
  return re;
}

/**
 * 执行评论操作
 */
function pinglunAction(){
  let pinglunContentArr = (storage.get("content")+'').split('\n');
  let index = Math.floor(Math.random() * pinglunContentArr.length);
  if(!storage.get("content")) return;
  let pinglunContent = pinglunContentArr[index];
  text("善语结善缘，恶言伤人心").findOne().click();
  sleep(1000);
  text("善语结善缘，恶言伤人心").findOne().setText(pinglunContent);
  sleep(1000);
  // console.log('发送',text("发送").findOne());
  let btnXY = text("发送").findOne().bounds();
  click(btnXY.centerX(),btnXY.centerY());
  sleep(1000);
}


//判断是否到最外层了
// console.log('判断是否存在 ',textEndsWith("人真实评价").exists());
// console.log('判断是否存在2 ',className("com.bytedance.ies.xelement.input.LynxInputView").exists());
// console.log('判断是否存在31 ',indexInParent(83).findOne().text());
// sleep(1000);
// className("com.lynx.tasm.behavior.ui.scroll.UIScrollView").findOne().scrollDown(0);
// let huadong = swipe(500, 1000, 500, 100, 500);

//     console.log('huadong ',huadong)
//     // sleep(1500);
// sleep(1000);
// sleep(50000000);
// console.log('判断是否存在3 ',className("com.lynx.tasm.ui.image.FlattenUIImage").filter(function (el) {

//   return el.bounds().left === 32 && el.bounds().right === 104;
// }).find().length);

let checkArr = [];
function main(){
  let runCount = parseInt(storage.get('runCount'));
  for(let i =0;i<runCount;i++){
    let logoArr = className("com.lynx.tasm.ui.image.FlattenUIImage").depth(2).filter(function (el) {
      return el.bounds().left === 32 && el.bounds().right === 104 && el.bounds().top > 240 && el.bounds().top<1240;
    }).find();
    console.log('logoArr ',logoArr)
    // 遍历当前页面
    for(let i = 0;i<logoArr.length;i++){
      console.log('第 '+i+' 个 ',logoArr[i].bounds());
      let tempIndex = logoArr[i].indexInParent();
      console.log('tempIndex = ',tempIndex);
      let name = indexInParent(tempIndex + 2).findOne();
      console.log('昵称 ',name.text());
      if(!name.text()) continue;
      if(name.text().indexOf("**")  > -1 ) continue ;
      if(checkArr.indexOf(name.text() )  > -1 ) continue ;
      
      
      // 记录昵称
      checkArr.push(name.text());
      let tempXy = indexInParent(tempIndex).findOne().bounds();
      console.log('头像坐标 ',tempXy.centerX(),tempXy.centerY())
      // let go1 = click(tempXy.centerX(),tempXy.centerY());//点击头像
      let go1 = press(tempXy.centerX(),tempXy.centerY(),500);//点击头像
      console.log('点击头像 ',go1)
      if(go1){
        sleep(5000);
        goDetail();
      }
    }
    // 循环完毕，准备滑动。
    sleep(1000);
    if(className("com.bytedance.ies.xelement.input.LynxInputView").exists() || textEndsWith("人真实评价").exists()){
      let huadong = swipe(500, 1000, 500, 100, 500);
      console.log('huadong ',huadong)
      sleep(1000);
    }else{
      break;
    }
    
  }

}

main();
// console.log(logos)
console.log("最后执行结束的日志")

toast('脚本结束V2');